How do I install a redis server on the D drive? - database

I'm following the instructions at this page here: https://github.com/ServiceStack/redis-windows
I moved the files to a folder on my D Drive but the install won't go through and I get an unknown error. Is it not possible to install the redis server on a drive other than the C drive? If so then how would I go about doing this?

By default Redis places its heap memory mapped file in the local application folder (e.g.
"%USERPROFILE%\AppData\Local"). You can overwrite this location by settings the heapdir in redis.windows.conf, located in the same directory as redis-server.exe. Don't forget to create the folder yourself, Redis won't do it for you.
Now if you start redis server supplying the conf file as the first parameter, this new dir will be used.
You might also need to set the maxheap size (I am using 2GB).

Related

How to choose a folder location for xip temp

I have a xip file called Xcode_12.3.xip, and I want to un-xip it into a folder, but I do not have enough space, so I want to change the temp location of xip into a directory on to a folder on my flash drive, but it is always taking up the space on Macintosh HD. How do I change the temp location of xip?
Hi you do not have to.
If you unzip it from an external drive then it will be located in
TemporaryItems
The issue is that it will change location for where the folder called TemporaryItems is placed.
Suggestion for you is to use Disk Drill and do a harddisk scan for files of size larger than 10GB just after expanding the file. Then you can pull it from the temp folder directly into the applications. Archive utility will then fail but you will have succeeded installing XCode in an earlier version.

Simple way to transfer data files out of a remote virtual machine

Currently I am using Git, through the command line, to transfer data files (.csv) from my google cloud VM instance (running linux) to my local machine. However, there is limit of 25MB per file on Github. The files will be 1 GB max.
Are there other straightforward methods to do this? Maybe I can add a couple lines to the code and push the csv to a database. I have not come across a simple way to do so yet.
Are there other straightforward methods to do this?
Yes, for linux you have many options butscp might be most straightforward.
If you can ssh to instance directly, say ssh user#host or (with key) ssh -i key user#host then you can secure copy as well with much the similar commands:
scp -i key user#host:source_path/remote_file . to copy remote file source_path/remote_file to current folder or viceversa
scp -i key local_file user#host:destination_path to copy some local_file from current local folder to remote destination_path
Keep in mind that user has to have proper privileges to access remote path/file in both cases. Archiving file beforehand can help as well especially with .csv files (tar cvzf my_archive.tar.gz my_csv_file.csv for example).
Note: If you suffer from bad network connection that break during such a large transfer or have bunch of files that are not changed but still are part of copy procedure then rsync might be better option, and there are certainly much more options depending on actual requirements.

SSIS File System store - Is there a file path I can use for access

I have an SSIS File System deployment and I am trying to understand if there is any easy way to deploy a large number of packages. The name implies that it is a physical directory on the disk, that I could copy/paste the files to, but I cannot find anything online that tells me where this directory lives.
Am I correct in thinking it works this way? Or will I need to either manually upload each package in SSMS or script an automated deployment
Your current files reside in:
\[your]\[computer]\pdevine\Documents\Visual Studio [yourVersion]\Projects
After creating a solution on the target, you can just copy and paste the files into the project directory for the target. If you don't know where to find your current files, click on any package and look here:

Icons from remote files

I have started coding an FTP client application (for fun). I’m trying to represent remotely hosted files with icons. For example, let’s say I’m browsing the root folder of an FTP server (/) and want to display the Backup.zip file with the icon association from that client operating system. On some systems, this may be the windows compression icon and other operating systems this may be WinZip or WinRAR icons.
I have the client browsing local files with the SHGetFileInfo() function. This works great with files that are local, however, this function requires the physical file in order to retrieve the associated icon. So, this will not work with remotely hosted files. I have found some samples of loading icons given a file extension, and this is really where the question comes in... What would be the best strategy to get icons associated to remote files?
Go to the registry every time and look up extension to icon associations
Create 1 byte files with each extension and use the SHGetFileInfo() function for remote files (using local 1 byte files as association for remote files)
Other strategies???
What would a professional software company creating an FTP client do?
Thank you for your time.
-Jessy Houle
I suggest that you don't go to the registry every time: go if you need to, but if you've already been for a given filetype then remember/cache that result (within your program) and reuse it.
Use the procedure here from a previous Stack Overflow question on the same idea and uses the registry instead of an actual file.
How can I get the filetype icon that Windows Explorer shows?

Is it possible to use relative paths for SSIS packages dtsConfig files?

I am trying to make our SQL Server Integration Services packages as portable as possible and the one thing that is preventing that is that the path to the config is always an absolute path, which makes testing and deployment a headache. Are there any suggestions for making this more manageble?
Another issue is when another developer gets the package out of source control the path is specific to the developers machine.
If you are trying to execute your packages using Visual Studio then the configuration file path will be hardcoded in there. So if you move your project around you'll need to change the path in the package settings. To avoid this you could use the Environment variable option to store the configuration file path. Then you'll only need to change that.
For testing and deployment however you should probably use the dtexec utility to execute your packages. Make some batch files for that. Preferably one for each different environment. Here the configuration file path can be relative.
dtexec /File Package.dtsx /Conf configuration.dtsConfig
This is if you're packages are on file system. You can also store them in SQL Server. You can also store your configuration in SQL Server which may provide flexibility.
After several hours trying to make this work I found a solution here (not the best one, but it works)
Locate your configuration files (dtsconfig files) in the same directory as your solution file (.sln file)
ALWAYS open your solution by double-clicking the solution file (.sln file). This will set the ‘working folder’ to be where the solution lives, your configuration file will be read correctly
Otherwise the relative paths did not work for me.
Check out the free utility that can edit SSIS configuration file paths without BIDS:
http://ssisconfigeditor.codeplex.com/
My stock standard trick for these sorts of problems are mapping drives.
Either by using a mapped network drive or by using Subst (both methods are interchangable).
e.g. Map the location of your package to N:\ then inside your package use paths using N:\MyParentPackage.dtsx, N:\MyChildPackage.dtsx. The packages can be on totally different drives in different folders on different machines, it'll work once you map the package location to the N:\
I usually put a script along side the project files to map the drive, which maps the drive so it can be easily run before. One gotcha, if you're using subst on VISTA - Win8, map it for elevated and non-elevated.
I use the same approach for file references in Visual Studio projects. Only issue with this approach, you use to solve too many issues in your dev environment and you'll run out of drives letters.

Resources